1
Память-ориентированная природа производительности графических процессоров
AI024Lesson 5
00:00

При ускорении на графических процессорах мы должны отказаться от подхода «вычисления первыми». Современная производительность определяется управлением памятью: координацией выделения данных, синхронизации и оптимизации между хостом (ЦП) и устройством (ГПУ).

1. Разрыв между памятью и вычислениями

Хотя пропускная способность арифметических операций на ГПУ ($ТФЛОПС$) резко возросла, пропускная способность памяти ($ГБ/с$) увеличилась намного медленнее. Это создает разрыв, при котором блоки выполнения часто «голодают», ожидая поступления данных из видеопамяти. В результате, программирование на ГПУ часто является программированием памяти.

2. Модель крыши (Roofline)

Эта модель визуализирует связь между интенсивностью арифметических операций (FLOP/байт) и производительностью. Приложения обычно делятся на два типа:

  • Ограниченные пропускной способностью памяти: Ограничены пропускной способностью (крутизной подъема).
  • Ограниченные вычислительной мощностью: Ограничены пиковыми ТФЛОПС (горизонтальным потолком).
Интенсивность арифметических операций (FLOP/байт)Производительность (ГФЛОПС)Ограниченные памятьюОграниченные вычислениями

3. Налог за перемещение данных

Основным узким местом производительности редко являются математические операции — это задержка и энергозатраты при перемещении байта по шине PCIe или из памяти HBM. Высокоэффективный код ориентируется на сохранение данных в памяти и минимизирует передачу данных между хостом и устройством.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>